perm filename NAUR.XGP[LET,JMC]2 blob
sn#345032 filedate 1978-03-28 generic text, type T, neo UTF8
/LMAR=0/XLINE=3/FONT#0=BASL30/FONT#1=BASI30/FONT#2=BASB30/FONT#10=BAXM30/FONT#11=ZERO30/FONT#3=STA200/FONT#4=NGB25
␈↓ ↓H␈↓␈↓βS␈↓∧ Artificial Intelligence Laboratory, STANFORD UNIVERSITY, Stanford, California 94305
␈↓ ↓H␈↓∧Telephone 415 497-4430␈↓
¬March 28, 1978
␈↓ ↓H␈↓Dr. Peter Naur
␈↓ ↓H␈↓Begoniavej 20
␈↓ ↓H␈↓DE-2820 GENTOFTE
␈↓ ↓H␈↓DENMARK
␈↓ ↓H␈↓Dear Peter:
␈↓ ↓H␈↓ Of course you may use the photographs.
␈↓ ↓H␈↓ I␈α⊃remember␈α⊃that␈α⊃there␈α⊃was␈α⊃a␈α⊃Paris␈α⊃vote␈α⊃against␈α⊃recursive␈α⊃procedures,␈α⊃and␈α⊃I␈α⊃was␈α⊃quite
␈↓ ↓H␈↓disappointed␈α
in␈α
that␈α
outcome,␈αbecause␈α
LISP␈α
experience␈α
had␈α
convinced␈αme␈α
of␈α
their␈α
value.␈α
It␈αwas␈α
a
␈↓ ↓H␈↓surprise␈αto␈αme␈αwhen␈αthe␈αReport␈αwas␈αinterpreted␈αas␈αadmitting␈αthem.␈α I␈αhad␈αbeen␈αsomeone␈αdi≠dent
␈↓ ↓H␈↓in␈αadvocating␈α
them,␈αbecause␈α
I␈αknew␈α
that␈αimplementing␈α
them␈αin␈α
LISP␈αhad␈α
involved␈αquite␈α
di≥erent
␈↓ ↓H␈↓techniques␈α∂than␈α∂were␈α∂required␈α∂for␈α∂FORTRAN␈α∂implementation,␈α∂i.e.␈α∂the␈α∂use␈α∂of␈α∂a␈α∂stack.␈α⊂ In␈α∂the
␈↓ ↓H␈↓event, implementing Algol 60 required entirely new implementation techniques.
␈↓ ↓H␈↓ Therefore,␈α
I␈αthink␈α
Baur␈α
is␈αcorrect␈α
in␈α
what␈αI␈α
take␈α
to␈αbe␈α
his␈α
contention␈αthat␈α
the␈α
decision␈αof
␈↓ ↓H␈↓the Paris meeting was reversed in the writing of the Report.
␈↓ ↓H␈↓ While␈α⊃an␈α⊃advocate␈α∩of␈α⊃recursive␈α⊃procedures,␈α⊃I␈α∩have␈α⊃mixed␈α⊃feelings␈α⊃about␈α∩this␈α⊃outcome.
␈↓ ↓H␈↓Combined␈α
with␈αother␈α
mutually␈αincompatible␈α
decisions␈αof␈α
the␈αParis␈α
meeting,␈αat␈α
which␈αdiscussions
␈↓ ↓H␈↓of␈αimplementability␈αwere␈α
ruled␈αout␈αof␈α
order,␈αit␈αcon≡rmed␈αthe␈α
existing␈αtendency␈αof␈α
the␈αCommittee
␈↓ ↓H␈↓to take no responsibility for the implementability of the language.
␈↓ ↓H␈↓ I␈α∂was␈α∂involved␈α⊂in␈α∂advocating␈α∂four␈α⊂features␈α∂of␈α∂ALGOL␈α⊂and␈α∂opposing␈α∂two.␈α⊂ I␈α∂advocated
␈↓ ↓H␈↓conditional␈α
expressions,␈α
and␈α
I␈α
think␈α∞their␈α
inclusion␈α
never␈α
gave␈α
anyone␈α
any␈α∞di≠culty.␈α
Recursive
␈↓ ↓H␈↓procedures␈α⊃would␈α⊂have␈α⊃given␈α⊂no␈α⊃di≠culty␈α⊃in␈α⊂the␈α⊃absence␈α⊂of␈α⊃certain␈α⊂other␈α⊃features,␈α⊃and␈α⊂they
␈↓ ↓H␈↓wouldn't␈αhave␈αjeopardized␈αnon-recursive␈αprograms␈αhad␈αtheir␈αdeclaration␈αbeen␈αrequired␈αas␈α
in␈αthe
␈↓ ↓H␈↓American proposal.
␈↓ ↓H␈↓ My␈α∞third␈α∂proposed␈α∞was␈α∂the␈α∞␈↓αown␈↓␈α∂variable.␈α∞ This␈α∂was␈α∞devised␈α∂at␈α∞the␈α∂Paris␈α∞meeting␈α∂in␈α∞an
␈↓ ↓H␈↓attempt␈αto␈αcombine␈αthe␈α
advantages␈αof␈αthe␈αEuropean␈αblock␈α
concept␈αwith␈αa␈αsyntactic␈α
block␈αconcept
␈↓ ↓H␈↓that␈αI␈αhad␈αdeveloped␈αand␈αwhich␈αwas␈αimplemented␈αin␈αthe␈αM.I.T.␈αlinking␈αloader␈αfor␈αthe␈αIBM␈α704.
␈↓ ↓H␈↓The␈α∂idea␈α∞of␈α∂syntactic␈α∞blocks␈α∂was␈α∞to␈α∂facilitate␈α∞the␈α∂combination␈α∞of␈α∂programs␈α∞written␈α∂by␈α∞di≥erent
␈↓ ↓H␈↓people␈α
or␈α
at␈αdi≥erent␈α
times␈α
by␈α
eliminating␈αcon∨ict␈α
of␈α
symbols.␈α
A␈αsymbol␈α
de≡ned␈α
within␈αa␈α
syntactic
␈↓ ↓H␈↓block␈α⊃had␈α⊃no␈α∩meaning␈α⊃outside␈α⊃it␈α∩unless␈α⊃speci≡cally␈α⊃exported␈α⊃or␈α∩pre≡xed␈α⊃by␈α⊃the␈α∩block␈α⊃name.
␈↓ ↓H␈↓However,␈α
I␈αimagined␈α
that␈αcompilers␈α
would␈αtreat␈α
symbols␈αin␈α
blocks␈αas␈α
symbols␈αwith␈α
long␈αnames,␈α
i.e.
␈↓ ↓H␈↓αDr. Peter Naur␈↓ ¬fMarch 28, 1978␈↓
nPage 2␈↓
␈↓ ↓H␈↓pre≡xed␈α
by␈α∞the␈α
string␈α
of␈α∞blocknames␈α
(suitably␈α
delimited)␈α∞extending␈α
to␈α
this␈α∞block␈α
from␈α∞the␈α
outer
␈↓ ↓H␈↓level.␈α⊂ The␈α⊂European␈α⊂concept␈α⊂of␈α⊂block␈α⊂was␈α⊃a␈α⊂more␈α⊂semantic␈α⊂notion␈α⊂since␈α⊂it␈α⊂freed␈α⊃the␈α⊂storage
␈↓ ↓H␈↓occupied␈α
by␈α
a␈αvariable␈α
outside␈α
the␈α
block.␈α ␈↓αown␈↓␈α
variables␈α
were␈α
an␈αo≥-the-cu≥␈α
attempt␈α
to␈αallow␈α
both
␈↓ ↓H␈↓concepts.␈α No-one␈αimagined␈αdynamic␈α␈↓αown␈αarray␈↓s␈αat␈αthe␈αParis␈αmeeting,␈αand␈αno-one␈αpresented␈αeven
␈↓ ↓H␈↓one␈α∞example␈α∂of␈α∞a␈α∂program␈α∞using␈α∂␈↓αown␈↓␈α∞variables.␈α∞ I␈α∂must␈α∞therefore␈α∂confess␈α∞a␈α∂major␈α∞part␈α∂of␈α∞the
␈↓ ↓H␈↓responsibility for a thoroughly bad idea.
␈↓ ↓H␈↓ I␈αwaged␈αan␈αunsuccessful␈αbattle␈αfrom␈αthe␈αbeginning␈αagainst␈αnumerical␈αlabels.␈α In␈αan␈αe≥ort␈αto
␈↓ ↓H␈↓meet␈α∞the␈α∂"need"␈α∞for␈α∞computed␈α∂␈↓αgo␈α∞to␈↓s,␈α∂Turanski␈α∞and␈α∞I␈α∂proposed␈α∞"designational␈α∂expressions".␈α∞ A
␈↓ ↓H␈↓desire␈α
to␈α∞treat␈α
array␈α
of␈α∞labels␈α
as␈α
ordinary␈α∞arrays␈α
led␈α
to␈α∞the␈α
idea␈α
that␈α∞these␈α
were␈α∞constant␈α
arrays
␈↓ ↓H␈↓and␈α
led␈α
to␈α
oral␈α∞proposals␈α
for␈α
constant␈α
arrays␈α
in␈α∞general.␈α
(Turanski's␈α
death␈α
meant␈α
that␈α∞this␈α
and
␈↓ ↓H␈↓perhaps␈αother␈αideas␈αwith␈αwhich␈αhe␈αhad␈αbeen␈αinvolved␈αwere␈αnot␈αadequately␈αpresented).␈α I␈αvaguely
␈↓ ↓H␈↓recall␈αthat␈αnumerical␈α
labels␈αwere␈αsupported␈αon␈α
the␈αgrounds␈αthat␈α
full␈αgenerality␈αrequired␈αthem,␈α
and
␈↓ ↓H␈↓we␈αshould␈αalways␈α
be␈αfully␈αgeneral.␈α This␈α
idea␈αwas␈αinconsistently␈αfollowed␈α
in␈αParis,␈αbut␈αmuch␈α
more
␈↓ ↓H␈↓consistently in writing the Report.
␈↓ ↓H␈↓ I␈α
opposed␈α
the␈α
"copy␈α
rule"␈α
for␈α
procedures␈α
on␈α
the␈α
grounds␈α
that␈α
we␈α
couldn't␈α
be␈α
sure␈α
it␈α
led␈α
to␈α
an
␈↓ ↓H␈↓e≠ciently␈α
implementable␈α
language,␈α
since␈α
no-one␈α
proposed␈α
implementing␈α
it␈α
by␈α
copying,␈α∞and␈α
there
␈↓ ↓H␈↓was␈αno␈αassurance␈α
that␈αcopying␈αwouldn't␈αbe␈α
required␈αin␈αsome␈αcases.␈α
The␈αobjection␈αwas␈α
ruled␈αout
␈↓ ↓H␈↓of order on the grounds that implementability shouldn't be discussed.
␈↓ ↓H␈↓ It␈α⊂seems␈α⊃to␈α⊂me␈α⊂that␈α⊃the␈α⊂Algol␈α⊂60␈α⊃Committee,␈α⊂even␈α⊂more␈α⊃than␈α⊂the␈α⊂Algol␈α⊃58␈α⊂Committee,
␈↓ ↓H␈↓abandoned␈α→its␈α→original␈α~instructions␈α→to␈α→develop␈α~a␈α→standardizable␈α→language␈α~for␈α→numerical
␈↓ ↓H␈↓computation.␈α∞ Instead,␈α∞Algol␈α∞60␈α∞became␈α∞a␈α∞collective␈α∞research␈α∞vehicle.␈α∞ Some␈α∞members,␈α∞e.g␈α
Perlis,
␈↓ ↓H␈↓frankly␈αmade␈αthis␈α
their␈αprimary␈αobjective,␈αand␈α
none␈αof␈αus,␈αas␈α
far␈αas␈αI␈αremember,␈α
argued␈αdirectly
␈↓ ↓H␈↓against␈α
it.␈α
I␈α
don't␈α
know␈α
whether␈α
the␈α
European␈α
members␈α
had␈α
any␈α
instructions␈α
from␈α
the␈α
societies␈α
(if
␈↓ ↓H␈↓any)␈α
the␈αrepresented,␈α
but␈αI␈α
distinctly␈αrecall␈α
that␈α
John␈αCarr,␈α
then␈αPresident␈α
of␈αACM,␈α
called␈α
for␈αa
␈↓ ↓H␈↓standardizable␈α∪language␈α∩or␈α∪something␈α∩like␈α∪it,␈α∩in␈α∪his␈α∩letter␈α∪of␈α∩appointment␈α∪of␈α∪the␈α∩American
␈↓ ↓H␈↓members of the Committee.
␈↓ ↓H␈↓ Ruling␈α
discussion␈α
of␈α
implementability␈αout␈α
of␈α
order␈α
was␈αanother␈α
mistake␈α
of␈α
the␈αCommittee.
␈↓ ↓H␈↓It␈αwas␈αassumed␈α
that␈αno-one␈αwould␈α
propose␈αwhat␈αhe␈α
couldn't␈αimplement,␈αbut␈α
this␈αdidn't␈αinsure␈α
that
␈↓ ↓H␈↓the combinations were implementable.
␈↓ ↓H␈↓ My␈α∞work␈α
on␈α∞the␈α
LISP␈α∞history␈α
paper␈α∞has␈α
made␈α∞me␈α
aware␈α∞of␈α
the␈α∞fallibility␈α
of␈α∞my␈α
memory
␈↓ ↓H␈↓about␈α⊃long-ago␈α⊃events.␈α⊃ Therefore,␈α⊂if␈α⊃these␈α⊃recollections␈α⊃are␈α⊂completely␈α⊃at␈α⊃variance␈α⊃with␈α⊂what
␈↓ ↓H␈↓others recall, ignore them at your discretion, and I won't be o≥ended.
␈↓ ↓H␈↓Best regards,
␈↓ ↓H␈↓John McCarthy
␈↓ ↓H␈↓Director
␈↓ ↓H␈↓Professor of Computer Science